SEARCH KEYWORD -- OS Threads
Why do I need a debugger?
When I begin to learn a new programming language, I will try and master the debugger for it as early as possible. For example, in 2013, while I touched the Go, there seems only gdb for use. Although gdb itself is not a good choice (From Debugging Go Code with GDB): As a consequence, although GDB can be useful in some situations, it is not a reliable debugger for Go programs, particularly heavily concurrent ones. But at that time there was no other choice. So after delve&nb...
The several flavors of random in Java
Random number generation is one of most basic features in any programming language. The basic utilization is always the same: generate a random number between 0 and 1. With such a simple resource at hand we sometimes overlook some interesting features. What do we learn from the books? The most obvious and maybe intuitive way to generate random numbers in Java is simply calling: java.lang.Math.random() Random generation is in the Math utility class with abs, pow, floor...
Rust vs Go: how to choose the best programming language for your project?
Rust and Go, these two modern programming languages, with their unique advantages, are becoming hot topics in the developer community. Their competition in performance, security, simplicity, feature set, and concurrency not only influences developers' choices but also foretells future trends in software development. Battle of Performance: Rust's Precision vs. Go's Efficiency Rust, developed by Mozilla Research, has become the preferred choice for performance-sensitive applications due to its zer...
RUST,GO,GOLANG,COMPARISON 2024-02-10 19:36:44
Why Android Will Always Be Laggier Than iOS
One of the things that really stands out using an iPhone is just how smooth it feels compared to using Android. Where as Android is laggy, with a measurable interim between when you touch the screen and when the OS responds, iOS almost seems to anticipate what you want to do before your finger touches the display.How has Apple managed this incredible feat? A better question might be: “How has Google managed to screw up Android’s multitouch so much?†According to Andrew M...
Node.js: Five Things Every PHP Developer Should Know
I recently started working on a few Node.js applications. Coming most recently from PHP (and Drupal in particular), I found the transition to Node.js to be surprisingly easy. Pleasurable, in fact. But I had to learn to think differently about a few things. Below I list the five things I think every PHP developer should know about Node.js. 1. Node.js Is Built On Chrome's JavaScript Engine Google's browser, Chrome, has a notoriously fast JavaScript engine called V8. And this JavaScript engine ...
Optimization Tricks used by the Lockless Memory Allocator
With the releasing of the Lockless Memory Allocator under the GPL version 3.0 license, we can now discuss more of the optimization tricks used inside it. Many of these are things you wouldn't want to use in normal code. However, when speed is the ultimate goal, sometimes we need to break a few rules and use code that is a little sneaky.The SlabA slab is a well-known technique for allocating fixed size objects. For a given object size, a chunk of memory is divided up into smaller regions of that ...
Optimization,Memory allocation 2011-11-16 08:02:16
Sequencing the Startup DNA on LinkedIn
What makes entrepreneurs different, and where do they come from? Are they born or taught? Are they unusually mobile in their careers? Does geography play a role? Do mentors and relationships matter?Numerous studies explore these questions by surveying hundreds of entrepreneurs. At LinkedIn, we take a different approach, on a different scale. By sifting through more than 120 million public profiles, we can analyze tens of thousands of startup founders’ [1]profiles – and find co...
Startup,Linkedin,Experience,Tips,DNA,Seq 2011-09-07 10:38:58
Good to Great Python reads
A colÂlecÂtion of python “must readsâ€:The Python yield keyÂword explainedPython’s super() conÂsidÂered super!UnderÂstandÂing Python DecoratorsWhat is a metaÂclass in Python?MetaÂclasses DemystifiedTry/Catch for valÂiÂdaÂtion or speed?Python (and Python C API): __new__ verÂsus __init__Python “self†keywordPython and the PrinÂciÂple of Least AstonishmentA CuriÂous Course on CorouÂtines and Concurr...
Python,Reference,eBook,Reading Material 2011-11-15 11:46:12
Why accessing Java HashMap may cause infinite loop in concurrent environment
HashMap in Java is frequently used to handle key/value pairs. But it is not a good candidate to be used in concurrent environment where ConcurrentHashMap should be used instead. If used in concurrent environment, it may cause lots of unexpected behavior even including make the program getting into an infinite loop situation. To understand how this can happen, let's first discuss how HaspMap works internally. In this post we will use implementation of HashMap before Java 8 as example, Java 8 prov...
JAVA,HASHMAP,INFINITE LOOP 2020-03-29 01:47:00
Parallel Javascript
Lately the ideas for a parallel, shared memory JavaScript have begun to take shape. I’ve been discussing with various JavaScript luminaries and it seems like a design is starting to emerge. This post serves as a documentation of the basic ideas; I’m sure the details will change as we go along. User Model The model is that a JavaScript worker (the “parentâ€) may spawn a number of child tasks (the “childrenâ€). The parent is suspended while the children exe...
Parallel JavaScript,API,Spawn,Parent,Task 2012-01-11 12:02:00
RECENT
- The Role of Coding Skills in Advancing Tech Careers
- Tips for Socializing With Friends During College
- Proximity Cards Do More Than Just Open Doors
- How to choose quality painted auto parts
- Oval engagement rings from MoonOcean: Elegance of form and individual approach
- Hologres vs AWS Redshift
- GoLand connect to Hologres
- A journey to investigate a goroutine leakage case
- Understanding Slice Behavior in Go
- Breaking Barriers: How 3D Printing is Democratizing Product Development
- more>>